package com.dys.testsupplier06;

import java.util.Arrays;
import java.util.function.Supplier;

/**
 * @className: com.dys.testsupplier06.SupplierTest
 * @description: Supplier是无参带有返回值的接口
 * @author: pine cone
 * @version: v1.0.0
 * @createTime: 2024/08/31 下午9:39
 */
public class SupplierTest {

    public static void fun1(Supplier<Integer> supplier) {
        // get()是一个无参有返回值的抽象方法......
        Integer max = supplier.get();
        System.out.println("max is " + max);
    }

    /**
     * 这是一个main()方法,是应用程序的入口
     *
     * @param args 方法的形参列表,是一个字符串数组,包含了从命令行传递给程序的参数
     */
    public static void main(String[] args) {
        fun1(() -> {
            // 求出数组中的最大值
            int[] arr = {11, 22, 55, 88, 99, 123, 777, 333};
            // 先对数组进行排序, 然后计算数组中的最大值，把最后的数据返回去
            Arrays.sort(arr);
            return arr[arr.length - 1];
        });
    }
}
